package com.linkgie.galaxyframework.metadata.structure;

import com.linkgie.galaxyframework.metadata.DataEntity;
import com.linkgie.galaxyframework.metadata.DataField;
import com.linkgie.galaxyframework.metadata.DataInterface;
import com.linkgie.galaxyframework.metadata.DataType;

@DataInterface
@DataEntity
public class ValueRange {
	
	/**
	 * 最小值（取值范围下界）；
	 */
	@DataField(name = "最小值", order = 10)
	private Object min;
	

	/**
	 * 取值范围是否包含 {@link #minValue()} 最小值；
	 * <p>
	 * 
	 * 默认为 true ；
	 * 
	 * @return
	 */
	@DataType(contentType = "enum;strict=true;true='是';false='否'")
	@DataField(name = "包含最小值", order = 11)
	private boolean minIncluded = true;
	
	
	/**
	 * 最大值（取值范围上界）；
	 */
	@DataField(name = "最大值", order = 20)
	private Object max;
	
	/**
	 * 取值范围是否包含 {@link #maxValue()} 最大值；
	 * <p>
	 * 
	 * 默认为 true ；
	 * 
	 * @return
	 */
	@DataType(contentType = "enum;strict=true;true='是';false='否'")
	@DataField(name = "包含最大值", order = 21)
	private boolean maxIncluded = true;


	public Object getMin() {
		return min;
	}

	public void setMin(Object min) {
		this.min = min;
	}

	public Object getMax() {
		return max;
	}

	public void setMax(Object max) {
		this.max = max;
	}

	public boolean isMaxIncluded() {
		return maxIncluded;
	}

	public void setMaxIncluded(boolean maxIncluded) {
		this.maxIncluded = maxIncluded;
	}

	public boolean isMinIncluded() {
		return minIncluded;
	}

	public void setMinIncluded(boolean minIncluded) {
		this.minIncluded = minIncluded;
	}
	
}
